package grupo5;

import javax.swing.JOptionPane;
import java.util.Scanner;

public class grupo5 {
			
	
	 
	// Variaveis de Tecnico
 	static int YES_OPTION=0, NO_OPTION=1;
	static String nometec[]= new String[32],nactec[]= new String[32],timetec[] = new String[32];
	static int idadetec[]= new int[32], salariotec[] = new int[32];
	static int 	posTec = 0;
	static int constTec = 32;
	
	
	
	// Variaveis de Selecao
	  
	 
	static String nomeSelecao [] = new String[32];
    static String continente [] = new String[32];
    static String tecnico [] = new String[32];
    static String grupo [] = new String[32];
    static String cidadeSede [] = new String[32];
    static int nSelecoes=0,constselec=32;
	
     
    // Variaveis de Estadio
	 
 	static String nomestadio [ ] = new String[12];
 	static String cidestadio [ ] = new String[12];
 	static String norestadio [ ] = new String[12];
 	
 	static int capestadio [ ] = new int[12];
  	static int areaestadio [ ] = new int[12];
 	
 	static int i=0,constanteest=12,posvet=0;	   
    
    //Variaveis de Jogador
    
    
	static String nomejogador [] = new String [768], selecaojogador []= new String [768], posicaojogador []= new String [768], 
	timejogador [ ] = new String[768];
	static String recjogador,recjogador2,recjogador5,recjogador6, altjogador;
	static int idadejogador [ ] = new int[768],op2Jog,rec,r=0;
		
	//Variaveis de jogos
	static int data [ ] = new int[64];
		static String estadio [ ] = new String[64];
		static String selecao1 [ ] = new String[64];
		static String selecao2 [ ] = new String[64];
		static int golselecao1 [ ] = new int[64];
		static int golselecao2 [ ] = new int[64];
		static int nJogo =0, constJogo = 64;
		static int tabela[][] = new int [32][5];
		
	
	public static void main(String[] args) {
			preCadastroJogos();
			preCadastroTec();
			preCadastroSelecao();
			preCadastroEstadio();
			menuprincipal ();
			}
		
	/**
	 * Exibe o menu principal
	 * @param args
	 */
		public static void menuprincipal () {
			int opcaoMenuPrinc;
			opcaoMenuPrinc = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opção : \n1 - Técnico  \n2 - Seleção \n3 - "
				+ "Jogador \n4 - Está¡dio \n5 - Jogos \n6 - Preencher tabela \n0 - Finalizar"));
			while (opcaoMenuPrinc!=0) {
				switch (opcaoMenuPrinc) {
				case (1) :
					//TÃ©cnico
					/**
					 * Insere, altera e recupera os dados dos tecnicos
					 * @author deefialho
					 * @since 02/07/2014
					 * @version 1.6 
					 */
					moduloPrincTec();
					
				break;			
			case (2) :
				//SeleÃ§Ã£o
				/**
				 *Insere, altera e recupera os dados das selecoes
				 * @author Cristina Benito
				 * @since 02/07//2014
				 */
				menuSelecao();
			break;			
			case (3) :
				//Jogador
				/**
			 *Insere, altera e recupera os dados dos jogadores
			 * @author Rone
			 * @since 02/07//2014
			 */
				menuIncAltRec();
			break;
			case (4) :				
				//EstÃ¡dio
				/**
				 * Insere, altera e recupera os dados dos estadios
				 * @author Jotta A
				 * @param args
				 * @version 2.0
				 * @since 02 de julho
				 */
				moduloPrincEst ();
			break;
			case (5) :
				//Jogos
				/**
				 *
				 * @author Adriana Souza de Quadros
				 * @since 30/07/2014
				 */
			break;
			case(6):
				//Preenche tabela
				exibeTabela();
				break;
			default :
				JOptionPane.showMessageDialog(null, "OpÃ§Ã£o digitada Ã© invÃ¡lida.", "OpÃ§Ã£o invÃ¡lida.", JOptionPane.PLAIN_MESSAGE);
			break;
			}
				opcaoMenuPrinc = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opção : \n1 - Técnico  \n2 - Seleção \n3 - "
						+ "Jogador \n4 - Está¡dio \n5 - Jogos \n6 - Preencher tabela \n0 - Finalizar"));
				}
			}
		public static void exibeTabela(){
		    for (int l = 0; l < tabela.length; l++)  {    
		         for (int c = 0; c < tabela[0].length; c++)     {   
		             System.out.print(tabela[l][c] + " "); //imprime caracter a caracter  
		         }    
		         System.out.println(" ");
		    }//muda de linha  
		       }    
		//Técnico
	/**
	 * 
	 * Modulo para o menu de inclusao, alteracao e recuperacao
	 * 
	 */
		public static void moduloPrincTec(){
	
	int	menuPrincTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Incluir \n" +
				"2 - Alterar \n3 - Recuperar \n0 - Voltar ao menu anterior"));
	while (menuPrincTec!=0){
		switch(menuPrincTec){
		case(1):
			moduloInclusaoTec();
		break;
		case(2):
			moduloAlteracaoTec();
		break;
		case(3):
			moduloRecuperacaoTec();
		}
		menuPrincTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Incluir \n" +
					"2 - Alterar \n3 - Recuperar \n0 - Voltar ao menu anterior"));
		}
	}
	/**
	 * Exibe uma mensagem quando o nÃºmero de inserÃ§Ãµes Ã© maior que o nÃºmero do vetor
	 */
	public static void msgLimiteIns(){
			JOptionPane.showMessageDialog(null, "Limite de inserções atingido. ["+i+"]", "Limite de inserção."
					+ "", JOptionPane.PLAIN_MESSAGE);	
		}
	/**
	 * Exibe uma mensagem quando uma opcao invalida Ã© digitada
	 */
	public static void msgOpcaoInvalida(){
		JOptionPane.showMessageDialog(null, "Opção digitada é invá¡lida.", "Opção invá¡lida.", JOptionPane.PLAIN_MESSAGE);
	}
	
	/**
	 * 
	 * Exibe as opcoes de inclusao
	 * 
	 */
	public static void moduloInclusaoTec(){
		if (posTec<constTec) {
			nometec [posTec] = JOptionPane.showInputDialog("Nome do TÃ©cnico: ");
			nactec [posTec] = JOptionPane.showInputDialog("Nacionalidade do tÃ©cnico: ");
			timetec [posTec] = JOptionPane.showInputDialog("Time do tÃ©cnico: ");
			idadetec [posTec] = Integer.parseInt(JOptionPane.showInputDialog("Idade do tÃ©cnico: "));
			while(!(idadetec[posTec]>=18 && idadetec[posTec]<=80)){
				msgOpcaoInvalida();
				idadetec [posTec] = Integer.parseInt(JOptionPane.showInputDialog("Idade do tÃ©cnico: "));
			}
			salariotec[posTec] = Integer.parseInt(JOptionPane.showInputDialog("SalÃ¡rio do tÃ©cnico: "));
			posTec = posTec+1;
			}
		else {
			i = constTec;
			msgLimiteIns();
		}
	}
	/**
	 * 
	 * Exibe menu de alteracao de tecnico
	 * 
	 */
	public static void moduloAlteracaoTec(){
		int menuAlteracaoTec;
		String alteracaoTec;
		alteracaoTec= JOptionPane.showInputDialog("Digite o nome do tÃ©cnico: ");
		i=0;
		while (!alteracaoTec.equalsIgnoreCase(nometec [ i ])){
			i=i+1;
		}
		menuAlteracaoTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do TÃ©cnico"
		+ " ["+nometec[i]+"]\n2 - Nacionalidade do TÃ©cnico ["+nactec[i]+"]\n3 - Time do TÃ©cnico "
		+ "["+timetec[i]+"]\n4 - Idade do TÃ©cnico ["+idadetec[i]+"]\n5 - SÃ¡lario do TÃ©cnico["+salariotec[i]+"]" +
				"\n0 - Voltar ao menu anterior"));	
		while(menuAlteracaoTec!=0){
		switch (menuAlteracaoTec) {
		
		case (1) :
		String altnometec = JOptionPane.showInputDialog("Nome do TÃ©cnico: ");
		int confirm = JOptionPane.showConfirmDialog(null, "Deseja alterar?", "ConfirmaÃ§Ã£o",YES_OPTION,NO_OPTION);
		if(confirm==YES_OPTION){
			nometec[i]=altnometec;
		}
		break;
		
		case (2) :
		String altnactec = JOptionPane.showInputDialog("Nacionalidade do TÃ©cnico: ");
		confirm = JOptionPane.showConfirmDialog(null, "Deseja alterar?", "ConfirmaÃ§Ã£o",YES_OPTION,NO_OPTION);
		if(confirm==YES_OPTION){
			nactec[i]=altnactec;
		}
		break;
		
		case (3) :
		String altTimetec = JOptionPane.showInputDialog("Ãšltimo time que treinou: ");
		confirm = JOptionPane.showConfirmDialog(null, "Deseja alterar?", "ConfirmaÃ§Ã£o",YES_OPTION,NO_OPTION);
		if(confirm==YES_OPTION){
			timetec[i]=altTimetec;
		}
		break;
		
		case (4) :
		int Altidadetec = Integer.parseInt(JOptionPane.showInputDialog("Idade do TÃ©cnico: "));
		while(!(Altidadetec>=18 && Altidadetec <=80)){
			msgOpcaoInvalida();
			Altidadetec = Integer.parseInt(JOptionPane.showInputDialog("Idade do TÃ©cnico: "));
		}
		confirm = JOptionPane.showConfirmDialog(null, "Deseja alterar?", "ConfirmaÃ§Ã£o",YES_OPTION,NO_OPTION);
		if(confirm==YES_OPTION){
			idadetec[i]=Altidadetec;
		}
		break;
		
		case (5) :
		int altsalariotec = Integer.parseInt(JOptionPane.showInputDialog("SalÃ¡rio do TÃ©cnico: "));
		confirm = JOptionPane.showConfirmDialog(null, "Deseja alterar?", "ConfirmaÃ§Ã£o",YES_OPTION,NO_OPTION);
		if(confirm==YES_OPTION){
			salariotec[i]=altsalariotec;
		}
		break;
		
		default :
		msgOpcaoInvalida();
		break;
			}
		
		menuAlteracaoTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do TÃ©cnico"
				+ " ["+nometec[i]+"]\n2 - Nacionalidade do TÃ©cnico ["+nactec[i]+"]\n3 - Time do TÃ©cnico "
				+ "["+timetec[i]+"]\n4 - Idade do TÃ©cnico ["+idadetec[i]+"]\n5 - SÃ¡lario do TÃ©cnico["+salariotec[i]+"]" +
						"\n0 - Voltar ao menu anterior"));
		}
	}
	
	/**
	 * 
	 * Exibe menu de recuperacao de tecnico
	 * 
	 */
	public static void moduloRecuperacaoTec(){
		int recuperacaoTec;
		recuperacaoTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Recuperar TÃ©cnico \n2 - TÃ©cnico mais novo e mais velho" +
				"\n3 - Grupos de idade \n4 - Maior e menor salÃ¡rio \n5 - SalÃ¡rio acima de 100.000,00 \n0 - Voltar ao menu principal"));
		while(recuperacaoTec !=0){
			switch(recuperacaoTec){
			case(1):
				msgRecuperacaoTec();
				break;
			case(2):
				novoVelhoTec();
				break;
			case(3):
				grupoIdadeTec();
				break;
			case(4):
				maiorMenorSalarioTec();
				break;	
			case(5):
				salarioMaiorCemTec();
				break;
			default :
				msgOpcaoInvalida();
				break;
			}
			recuperacaoTec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Recuperar TÃ©cnico \n2 - TÃ©cnico mais novo e mais velho" +
					"\n3 - Grupos de idade \n4 - Maior e menor salÃ¡rio \n5 - SalÃ¡rio acima de 100.000,00 \n0 - Voltar ao menu principal"));
		}
	}
		/**
		 * 
		 * Executa a opcao 1 de recuperacao
		 * 
		 */
		public static void msgRecuperacaoTec(){
			i=0;
			String recuperarTec; 
			recuperarTec = JOptionPane.showInputDialog("Informe o nome do tÃ©cnico: ");
			
			while (!recuperarTec.equalsIgnoreCase(nometec[i])){
			i=i+1;
			}
			JOptionPane.showMessageDialog(null,"Nome: "+nometec[i]+"\n Nacionalidade: "+nactec[i]+"\n Time do TÃ©cnico: "+timetec[i]+
			"\n Idade do TÃ©cnico: "+idadetec[i]+"\n SalÃ¡rio do TÃ©cnico"+salariotec[i], "RecuperaÃ§Ã£o TÃ©cnico", JOptionPane.PLAIN_MESSAGE);
	}
		/**
		 * 
		 * Executa a opcao 2 de recuperacao
		 * 
		 */
		public static void novoVelhoTec(){
			int tecNovo = 0;
			String nomeTecNovo = "";
			int tecVelho = 0;
			String nomeTecVelho = "";
			for(i=0; i<constTec;i++){
				if(i==0){
					tecNovo = idadetec[i];
					nomeTecNovo = nometec[i];
					tecVelho = idadetec[i];
					nomeTecVelho = nometec[i];
				}
				else {
					if (nometec[i]!=null) {
						if(idadetec[i]>tecVelho){
							tecVelho = idadetec[i];
							nomeTecVelho = nometec[i];
					}
						if(idadetec[i]<=tecNovo){
							tecNovo = idadetec[i];
							nomeTecNovo = nometec[i];
					}
					}
						
				}
			}
		JOptionPane.showMessageDialog(null,nomeTecVelho+ " Ã© o tÃ©cnico mais velho e tem: "+tecVelho+" anos\n "
				+nomeTecNovo+" Ã© o tÃ©cnico mais novo e tem: "+tecNovo+" anos");
			
		}
		/**
		 * 
		 * Executa a opcao 3 de recuperacao
		 * 
		 */
		public static void grupoIdadeTec(){
			String menor40="";
			String entre40e50="";
			String maior50="";
			for(i=0;i<constTec;i++){
				if (nometec[i]!=null) {
					if(idadetec[i]<40){
						menor40=menor40+nometec[i]+"\n";
					}
				
			else {
				if(idadetec[i]>=40 && idadetec[i]<=50){
					entre40e50=entre40e50+nometec[i]+"\n";
				}
				else{
					maior50=maior50+nometec[i]+"\n";
				}
			}
			}
			}
			
		JOptionPane.showMessageDialog(null,"Os tÃ©cnicos com menos de 40 anos sÃ£o:\n"+menor40+ "Os tÃ©cnicos entre 40 e 50 anos sÃ£o:\n"
				+entre40e50+"Os tÃ©cnicos com mais de 50 anos sÃ£o:\n"+maior50);
		}
		/**
		 * 
		 * Executa a opcao 4 de recuperacao
		 * 
		 */
		public static void maiorMenorSalarioTec(){
			int salTecMa = 0;
			int salTecMe = 0;
			String nTecMa = "";
			String nTecMe = "";
			for(i=0; i<constTec; i++){
				if(i==0){
					salTecMa = salariotec[i];
					salTecMe = salariotec[i];
					nTecMe = nometec[i];
					nTecMa = nometec[i];
				}
				else{
					if (nometec[i]!=null) {
					if(salTecMe > salariotec[i]){
						salTecMe = salariotec[i];
						nTecMe = nometec[i];
					}
					else 
						if(salTecMa <= salariotec[i]){
							salTecMa = salariotec[i];
							nTecMa = nometec[i];
						}
					}
				}
			}
			JOptionPane.showMessageDialog(null,"O tÃ©cnico com o menor salÃ¡rio Ã© "+nTecMe+" e recebe "+salTecMe+" reais\n" +
					"O tÃ©cnico com o maior salÃ¡rio Ã© "+nTecMa+" e recebe "+salTecMa+" reais");
		}
		/**
		 * 
		 * Executa a opcao 5 de recuperacao
		 * 
		 */
		public static void salarioMaiorCemTec(){
			int salarioMaiorCem = 0;
			for(i=0;i<3;i++){
			if(salariotec[i]>=100000){
			salarioMaiorCem = salarioMaiorCem + 1;
			}
		}
		JOptionPane.showMessageDialog(null,salarioMaiorCem+ " TÃ©cnicos com salÃ¡rio acima de 100.000,00");
		}
		public static void preCadastroTec(){
		nometec[0]="LuÃ­s Felipe Scolari";nometec[1]="Gerardo Martino"; nometec[2]="Joachim Low"; nometec[3]="Jorge Sampaoli"; 
		nometec[4]="Oscar Tabarez";nometec[5]="José Pékerman"; nometec [6] = "Paulo Bento";	nometec [7] = "Roy Hodgson";nometec [8] = "Miguel Herrera";
		nometec [9] = "Vicente del Bosque";
		nactec[0]="Brasileiro"; nactec[1]="Argentino"; nactec[2]="AlemÃ£o"; nactec[3]="Argentino"; nactec[4]="Uruguaio";nactec[5]="Argentino";nactec[6]="";nactec[7]="";nactec[8]="";nactec[9]="";
		timetec[0]="Palmeiras"; timetec[1]="Barcelona"; timetec[2]="Austria Wien"; timetec[3]="Universidad de Chile";timetec[4]="Boca Juniors";timetec[5]="Tigres";timetec[6]="Tigres";timetec[7]="Tigres";timetec[8]="Tigres";timetec[9]="";
		idadetec[0]=65;idadetec[1]=51;idadetec[2]=54;idadetec[3]=54;idadetec[4]=67;idadetec[5]=65;idadetec[6]=65;idadetec[7]=56;idadetec[8]=47;idadetec[9]=40;
		salariotec[0]=8800000;salariotec[1]=500000;salariotec[2]=8000000;salariotec[3]=4000000;salariotec[4]=2800000;salariotec[5]=3700000;salariotec[6]=2800000;salariotec[7]=2800000;salariotec[8]=2800000;salariotec[9]=2800000;
		}
	//SeleÃ§Ã£o
	/**
     * Incluir cadastro. Este mÃ©todo permite  a entrada de dados em um cadastro.
     */
  public static void incluirSelecao(){
	  
	  nomeSelecao [nSelecoes] = JOptionPane.showInputDialog ("Digite a SeleÃ§Ã£o");
	  continente [nSelecoes] = JOptionPane.showInputDialog("Digite o Continente");
	  tecnico [nSelecoes] = JOptionPane.showInputDialog("Digite nome do TÃ©cnico");
	  grupo [nSelecoes] = JOptionPane.showInputDialog("Digite nome do Grupo");
	  cidadeSede [nSelecoes] = JOptionPane.showInputDialog("Digite nome da Cidade Sede");
    	 
	  JOptionPane.showMessageDialog (null,"Cadastro: \n" + nomeSelecao[nSelecoes] + "\n" + continente[nSelecoes] + "\n" + tecnico[nSelecoes] + "\n" + grupo[nSelecoes] + "\n" + cidadeSede[nSelecoes]);
	  nSelecoes++;
    }
  
  public static void preCadastroSelecao(){
 	  
		  nomeSelecao [0] = "Brasil";
	  continente [0] = "América do Sul";
	  tecnico [0] = "Luis Felipe Scolari";
	  grupo [0] = "A";
	  cidadeSede [0] = "Rio de Janeiro";
	  
	  nomeSelecao [1] = "Argentina";
	  continente [1] = "América do Sul";
	  tecnico [1] = "Gerardo Martino";
	  grupo [1] = "F";
	  cidadeSede [1] = "Belo Horizonte";
	  
	  nomeSelecao [2] = "Alemanha";
	  continente [2] = "Europa";
	  tecnico [2] = "Joachim Low";
	  grupo [2] = "G";
	  cidadeSede [2] = "Salvador";
	  
	  nomeSelecao [3] = "Chile";
	  continente [3] = "América do Sul";
	  tecnico [3] = "Jorge Sampaoli";
	  grupo [3] = "B";
	  cidadeSede [3] = "Belo Horizonte";
	  
	  nomeSelecao [4] = "Uruguai";
	  continente [4] = "América do Sul";
	  tecnico [4] = "Óscar Tabárez";
	  grupo [4] = "D";
	  cidadeSede [4] = "Sete Lagoas";
	  
	  nomeSelecao [5] = "Colômbia";
	  continente [5] = "América do Sul";
	  tecnico [5] = "José Pekerman";
	  grupo [5] = "C";
	  cidadeSede [5] = "Cotia";
	  
	  nomeSelecao [6] = "Portugal";
	  continente [6] = "Europa";
	  tecnico [6] = "Paulo Bento";
	  grupo [6] = "G";
	  cidadeSede [6] = "Campinas";
	  
	  nomeSelecao [7] = "Inglaterra";
	  continente [7] = "Europa";
	  tecnico [7] = "Roy Hodgson";
	  grupo [7] = "D";
	  cidadeSede [7] = "Rio de Janeiro";
	  
	  nomeSelecao [8] = "México";
	  continente [8] = "América do Norte";
	  tecnico [8] = "Miguel Herrera";
	  grupo [8] = "A";
	  cidadeSede [8] = "Santos";
	  
	  nomeSelecao [9] = "Espanha";
	  continente [9] = "Europa";
	  tecnico [9] = "Vicente del Bosque";
	  grupo [9] = "B";
	  cidadeSede [9] = "Curitiba";
	  
  }

  
    /**
     * Alterar Cadastro. Este mÃ©todo permite alterar um cadastro jÃ¡ realizado.
     */
    public static void alterarSelecao() {

    	        	
        	 String alterar;
        	 alterar = JOptionPane.showInputDialog("Digite a SeleÃ§Ã£o que deseja Alterar:");
        	 int i=0;
        	 while (!alterar.equalsIgnoreCase(nomeSelecao[i])){
        		 i=i+1;
        	 }
        	 int op3;
         	op3 = Integer.parseInt(JOptionPane.showInputDialog("Alterar : \n1 - Nome da SeleÃ§Ã£o\n2 - Continente\n3 - TÃ©cnico\n4 - Grupo\n5 - Cidade Sede\n0 - Voltar ao menu principal"));
             while (op3!=0){
            	 
             switch (op3) {
             case 1:
             nomeSelecao[i] = JOptionPane.showInputDialog("Nova SeleÃ§Ã£o");
             JOptionPane.showMessageDialog (null,"\n" + nomeSelecao[i] + "\n" + continente[i] + "\n" + tecnico[i] + "\n" + grupo[i] + "\n" + cidadeSede[i]);        	 
        	 break;
        	 
        	           	                          	
        case 2:
        	 
        	 continente[i] = JOptionPane.showInputDialog("Novo Continente");
        	 JOptionPane.showMessageDialog (null, "\n"+nomeSelecao[i] + "\n" + continente[i] + "\n" + tecnico[i] + "\n" + grupo[i] + "\n" + cidadeSede[i]);
        	  
        	 break;
        	
        case 3:
        	 
        	 tecnico[i] = JOptionPane.showInputDialog("Novo TÃ©cnico");
        	 JOptionPane.showMessageDialog (null,"\n"+ nomeSelecao[i] + "\n" + continente[i] + "\n" + tecnico[i] + "\n" + grupo[i] + "\n" + cidadeSede[i]);
        	 
        	 break;
        	 
        case 4:
        	 
       	     grupo[i] = JOptionPane.showInputDialog("Novo Grupo");
       	     JOptionPane.showMessageDialog (null,"\n"+ nomeSelecao[i] + "\n" + continente[i] + "\n" + tecnico[i] + "\n" + grupo[i] + "\n" + cidadeSede[i]);
       	     
        	 break;
       	
       case 5:
    	   	 
    	   	cidadeSede[i] = JOptionPane.showInputDialog("Nova Cidade Sede");
    	   	JOptionPane.showMessageDialog (null,"\n"+ nomeSelecao[i] + "\n" + continente[i] + "\n" + tecnico[i] + "\n" + grupo[i] + "\n" + cidadeSede[i]);
    	     	 
    	     break;
        
    	   
        default:
        	 JOptionPane.showMessageDialog (null, "OpÃ§Ã£o InvÃ¡lida");
  
             }
          	op3 = Integer.parseInt(JOptionPane.showInputDialog("Alterar : \n1 - Nome da SeleÃ§Ã£o\n2 - Continente\n3 - TÃ©cnico\n4 - Grupo\n5 - Cidade Sede\n0 - Voltar ao menu principal"));        
          }
      }
    
    /**
     * Recuperar cadastro. Este mÃ©todo permite recuperar um cadastro realizado.
     */
 public static void recuperarSelecao() {
	   int op2;
	   int i=0;
  	
  	op2 = Integer.parseInt(JOptionPane.showInputDialog("Recuperar SeleÃ§Ã£o:\n1 - SeleÃ§Ãµes por grupo\n2 - SeleÃ§Ãµes por continente\n3 - SeleÃ§Ãµes por cidade sede\n0 - Voltar ao menu anterior"));
      while (op2!=0){
      	
      switch (op2) {
      case 1:
    	  String selecgrup="";
      	 String recuperar = JOptionPane.showInputDialog ("Grupo da SeleÃ§Ãµes Cadastrada:");
      	 for (i=0; i<constselec; i++){
      		 if (grupo[i]!=null) {
		      	 if (recuperar.equalsIgnoreCase (grupo[i])) {
		      		 selecgrup=selecgrup+"\n"+nomeSelecao[i];
		      	 }
      		 }
      	 }
         JOptionPane.showMessageDialog (null,"SeleÃ§Ãµes do grupo "+recuperar+":\n"+selecgrup);
      	 break;
      	           	                          	
      case 2:
    	  String selecont="";
    	  recuperar="";
      	 recuperar = JOptionPane.showInputDialog ("\nContinente das SeleÃ§Ãµes Cadastrada:\n");
      	for (i=0; i<constselec; i++){
     		 if (grupo[i]!=null) {
		      	 if (recuperar.equalsIgnoreCase (grupo[i])) {
		      		 selecont=selecont+"\n"+nomeSelecao[i];
		      	 }
     		 }
     	 }
        JOptionPane.showMessageDialog (null,"SeleÃ§Ãµes do continente "+recuperar+":\n"+selecont);
     	 break;
      	
      case 3:
    	  String seleccidsed="";
    	  recuperar="";
      	 recuperar = JOptionPane.showInputDialog ("\nCidade Sede da SeleÃ§Ã£o Cadastrada:\n");
      	for (i=0; i<constselec; i++){
     		 if (grupo[i]!=null) {
		      	 if (recuperar.equalsIgnoreCase (grupo[i])) {
		      		 seleccidsed=seleccidsed+"\n"+nomeSelecao[i];
		      	 }
     		 }
     	 }
        JOptionPane.showMessageDialog (null,"SeleÃ§Ãµes da cidade sede "+recuperar+":\n"+seleccidsed);
     	 break;
      	
      default:
      	JOptionPane.showMessageDialog (null, "OpÃ§Ã£o InvÃ¡lida");
      	}
      
      op2 = Integer.parseInt(JOptionPane.showInputDialog("Recuperar SeleÃ§Ã£o:\n1 - SeleÃ§Ãµes por grupo\n2 - SeleÃ§Ãµes por continente\n3 - SeleÃ§Ãµes por cidade sede\n0 - Voltar ao menu anterior"));

      }   
  }
    
    public static void menuSelecao() {
    	int op1;
    	op1 = Integer.parseInt(JOptionPane.showInputDialog("Selecione OpÃ§Ã£o  \n1- Incluir\n2 - Alterar\n3 - Recuperar\n0 - Voltar ao menu principal"));
            while (op1!=0){
            	
            switch (op1) {
            case 1:
            	incluirSelecao();
            	break;
            	           	                          	
            case 3:
            	recuperarSelecao();
            	break;
            	
            case 2:
            	alterarSelecao();
            	break;
            	
            default:
            	JOptionPane.showMessageDialog (null, "OpÃ§Ã£o InvÃ¡lida");
      
            }
        	op1 = Integer.parseInt(JOptionPane.showInputDialog("Selecione OpÃ§Ã£o  \n1- Incluir\n2 - Alterar\n3 - Recuperar\n0 - Voltar ao menu principal"));            
            }
            
      }
    
    
    public static void menuIncAltRec(){
		op2Jog = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Incluir \n2 - Alterar "
				+ "\n3 - Recuperar \n0 - Voltar ao Menu Principal"));
		while (op2Jog!=0) {
			
			switch (op2Jog) {
			case (1) :
				inclusaoJogador();
			break;
			case (2) :					
				menuAltJogador();
			break;			
			case (3) :
				menuRecuperar();
			break;
			default:
				menuIncAltRec();
			}
			menuIncAltRec();
		}
	}
	/** 
	 * 
	 * Recupera jogadores a partir do nome
	 * 
	 */
	public static void menuRecuperar(){
		rec = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n 1 - Recuperar jogador"
				+ "\n2 - Jogadores de um determinado time"+"\n3 - Jogadores de uma determinada posiÃ§Ã£o"+
				"\n4 - Jogadores de uma determinada seleÃ§Ã£o"+"\n0 - Voltar ao Menu Principal"));
		while (rec!=0){
			switch (rec) {
			/**
			 * 
			 * Case para recuperaÃ§Ã£o de jogadores por nome:
			 * 
			 */
			case (1):
				
			recjogador = JOptionPane.showInputDialog("Digite o nome do jogador: ");
			
			while (!recjogador.equalsIgnoreCase(nomejogador[i])){
				i=i+1;
			}
			msgRecuperacao1();
			break;
	
			/**
			 * 
			 * Case para recuperacao de jogadores por time:
			 * 
			 */
			case (2):
			String  jogadortime;
			jogadortime ="";
			recjogador2 = JOptionPane.showInputDialog("Digite o time: ");
			
			for (i = 0;i<768; i++){
					if (recjogador2.equalsIgnoreCase(timejogador[i])){
						jogadortime = jogadortime + nomejogador[i] + "\n";
					}							
				
			}
			JOptionPane.showMessageDialog(null, "Jogadores de um time: "+jogadortime);
			menuRecuperar();
			
				
				break;
				/**
				 * 
				 * Case para recuperaÃ§Ã£o de jogadores por posicao:
				 * 
				 */
			case (3):
			String jogadorposicao;
			jogadorposicao ="";
			recjogador5 = JOptionPane.showInputDialog("Digite a posiÃ§Ã£o: ");
			
			for (i = 0;i<768; i++){
					if (recjogador5.equalsIgnoreCase(posicaojogador[i])){
						jogadorposicao = jogadorposicao + nomejogador[i] + "\n";
					}							
				
			}
			JOptionPane.showMessageDialog(null, "Jogadores de uma determinada posiÃ§Ã£o: \n"+jogadorposicao);
			menuRecuperar();
				
				break;
				
				/**
				 * 
				 * Case para recuperaÃ§Ã£o de jogadores por selecao:
				 * 
				 */
			case (4):
			String jogadorselecao;
			jogadorselecao ="";
			recjogador6 = JOptionPane.showInputDialog("Digite a seleÃ§Ã£o: ");
			
			for (i = 0;i<768; i++){
					if (recjogador6.equalsIgnoreCase(selecaojogador[i])){
						jogadorselecao = jogadorselecao + nomejogador[i] + "\n";
					}							
				
			}
			JOptionPane.showMessageDialog(null,"Jogador de uma seleÃ§Ã£o: \n"+jogadorselecao);
			menuRecuperar();
				
				break;
				
		default :
			msgOpcaoInvalida();
			break;
			}
		}
	}
	/** 
	 * 
	 * MÃ³dulo de inclusÃ£o de jogadores
	 *
	 */
	public static void inclusaoJogador(){
		if (r<768) {
	
		nomejogador [r] = JOptionPane.showInputDialog("Nome do Jogador");
		selecaojogador [r] = JOptionPane.showInputDialog("SeleÃ§Ã£o do Jogador "+nomejogador [ r ]);
		idadejogador [r] = Integer.parseInt(JOptionPane.showInputDialog("Idade do Jogador "+nomejogador [ r ]));
		posicaojogador [r] = JOptionPane.showInputDialog("PosiÃ§Ã£o do Jogador "+nomejogador [ r ]);
		timejogador [r] = JOptionPane.showInputDialog("Time do Jogador "+nomejogador [ r ]);
		r=r+1;
		}
		else
			msgLimiteExcedido();	
		
	}
	/**
	 * 
	 * Menu para alteracao de jogador
	 * 
	 */
	public static void menuAltJogador(){
		altjogador = JOptionPane.showInputDialog("Digite o nome do Jogador: ");
		i=0;
		while (!altjogador.equalsIgnoreCase(nomejogador [ i ])){
		i=i+1;
		}
		int op3Jog;
		op3Jog = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do Jogador"
				+ " ["+nomejogador[i]+"]\n2 - SeleÃ§Ã£o do Jogador ["+selecaojogador[i]+"]\n3 - Idade do Jogador "
						+ "["+idadejogador[i]+"]\n4 - PosiÃ§Ã£o do Jogador ["+posicaojogador[i]+"]\n 5 - Time do Jogador "
								+ "["+timejogador[i]+"]\n 0 - Voltar ao menu"));
		while (op3Jog!=0) {
		switch (op3Jog) {
		
		case (1) :
		nomejogador [i] = JOptionPane.showInputDialog("Nome do Jogador");
		break;
		
		case (2) :
			selecaojogador [ i ] = JOptionPane.showInputDialog("SeleÃ§Ã£o do Jogador");
		break;
		
		case (3) :
			idadejogador [ i ] = Integer.parseInt(JOptionPane.showInputDialog("Idade do Jogador"));
		break;
		
		case (4) :
			posicaojogador [ i ] = JOptionPane.showInputDialog("PosiÃ§Ã£o do Jogador");
		break;
		case (5) :
			timejogador [ i ] = JOptionPane.showInputDialog("Time do Jogador");
		break;
		
		default :
			JOptionPane.showMessageDialog(null, "OpÃ§Ã£o digitada Ã© invÃ¡lida.", "OpÃ§Ã£o invÃ¡lida.", JOptionPane.PLAIN_MESSAGE);
			break;
			}
		op3Jog = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do Jogador"
				+ " ["+nomejogador[i]+"]\n2 - SeleÃ§Ã£o do Jogador ["+selecaojogador[i]+"]\n3 - Idade do Jogador "
						+ "["+idadejogador[i]+"]\n4 - PosiÃ§Ã£o do Jogador ["+posicaojogador[i]+"]\n 5 - Time do Jogador "
								+ "["+timejogador[i]+"]\n 0 - Voltar ao menu"));
		}
	}
	/**
	 * 
	 * Mensagem de limite excedido
	 * 
	 */
	public static void msgLimiteExcedido(){
		JOptionPane.showMessageDialog(null, "Limite de inserÃ§Ãµes atingido. ["+i+"]", "Limite de inserÃ§Ã£o."
				+ "", JOptionPane.PLAIN_MESSAGE);
	}
	/**
	 * 
	 * Mensagem de recuperacao de jogadores por nome
	 * 
	 */
	public static void msgRecuperacao1(){
		JOptionPane.showMessageDialog(null, "Nome: "+nomejogador[i]+"\n SeleÃ§Ã£o: "+selecaojogador[i]+"\n Idade: "
				+ idadejogador[i]+"\n PosiÃ§Ã£o: "+posicaojogador[i]+"\n Time: "+timejogador[i], "RecuperaÃ§Ã£o Jogador", JOptionPane.PLAIN_MESSAGE);
	}
	

	//EstÃ¡dio
	/**
	* 
	* Modulo que exibe o menu principal de estadio
	* 
	*/
	public static void moduloPrincEst(){
	int opcaoPrinEst;
	opcaoPrinEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Incluir \n2 - Alterar \n3 - "
			+ "Recuperar \n0 - Voltar ao Menu Principal"));
	do {
	
	switch (opcaoPrinEst) {
	case (1) :
		//Incluir
		moduloIncEst();					
		break;
	case (2) :
		//Alterar
		moduloAltEst ();
		break;
	case (3) :
		//Recuperar
		moduloRecupEst();
		break;
	default :
		JOptionPane.showMessageDialog(null, "Opcao digitada e inva¡lida.", "Opção invá¡lida.", JOptionPane.PLAIN_MESSAGE);
		break;
	}
	opcaoPrinEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - Incluir \n2 - Alterar \n3 - "
			+ "Recuperar \n0 - Voltar ao Menu Principal"));
	
	}while (opcaoPrinEst!=0);
	}	
	
	/**
	* 
	* Modulo que exibe o menu de inclusao de dados de estadios
	* 
	*/	
	public static void moduloIncEst() {		
	//Incluir
		if (posvet<constanteest) {
			nomestadio [posvet] = JOptionPane.showInputDialog("Nome do EstÃ¡dio");
			cidestadio [posvet] = JOptionPane.showInputDialog("Cidade do EstÃ¡dio "+nomestadio [posvet]);
			norestadio [posvet] = JOptionPane.showInputDialog("O EstÃ¡dio "+nomestadio [ posvet ]+" Ã© novo ou reformado");
			while (!(norestadio[posvet].equalsIgnoreCase("novo")||norestadio[posvet].equalsIgnoreCase("reformado"))) {
				JOptionPane.showMessageDialog(null,"Digite 'novo' ou 'reformado'","Dado incorreto",JOptionPane.PLAIN_MESSAGE);
			norestadio [posvet] = JOptionPane.showInputDialog("O EstÃ¡dio "+nomestadio [ posvet ]+" Ã© novo ou reformado");
			}
			capestadio [posvet] = Integer.parseInt(JOptionPane.showInputDialog("Capacidade do EstÃ¡dio "+nomestadio [posvet]));
			areaestadio [posvet] = Integer.parseInt(JOptionPane.showInputDialog("Ã�rea do EstÃ¡dio "+nomestadio [ posvet]));
			posvet=posvet+1;
			}
	
		else {
			JOptionPane.showMessageDialog(null, "Limite de inserÃ§Ãµes atingido. ["+posvet+"]", "Limite de inserÃ§Ã£o."
					+ "", JOptionPane.PLAIN_MESSAGE);
			}
	}	
	
	/**
	* 
	* Modulo que exibe o menu de alteracao os dados do estadios
	* 
	*/
	public static void moduloAltEst() {
		//Alterar
	String recuptodestadios,altestadio;
		i=0;
		int opcaoAlterEst;
		recuptodestadios="";
		for (i=0;i<constanteest;i++){
			int c=0;
			if (nomestadio[i]!=null) {
			c=i+1;
		recuptodestadios = recuptodestadios+"\n"+c+" - EstÃ¡dio "+nomestadio[i];
		}
		}
		altestadio = JOptionPane.showInputDialog(recuptodestadios+"\n\nDigite o nome do estÃ¡dio: ");
		
		i=0;
		while(!altestadio.equalsIgnoreCase(nomestadio[i])){
		i=i+1;
		}
		opcaoAlterEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do EstÃ¡dio"
			+ " ["+nomestadio[i]+"]\n2 - Cidade do EstÃ¡dio ["+cidestadio[i]+"]\n3 - Capacidade do EstÃ¡dio "
					+ "["+capestadio[i]+"]\n4 - Novo ou reformado ["+norestadio[i]+"]\n5 - Ã�rea do EstÃ¡dio ["+areaestadio[i]+"]\n0 - Voltar ao menu"));
			
		while (opcaoAlterEst!=0) {
		
		//Opções de alteração
		switch (opcaoAlterEst) {
		
		case (1) :
		nomestadio [i] = JOptionPane.showInputDialog("Nome do Está¡dio ["+nomestadio[i]+"]");
		break;
		
		case (2) :
			cidestadio [i] = JOptionPane.showInputDialog("Cidade do Está¡dio "+nomestadio [ i ]);
		break;
		
		case (3) :
			capestadio [i] = Integer.parseInt(JOptionPane.showInputDialog("Capacidade do Está¡dio "+nomestadio [ i ]));
		break;
		
		case (4) :
			norestadio [i] = JOptionPane.showInputDialog("O Está¡dio "+nomestadio [ i ]+" Ã© novo ou reformado");
		while (!(norestadio[i].equalsIgnoreCase("novo")||norestadio[i].equalsIgnoreCase("reformado"))) {
			JOptionPane.showMessageDialog(null,"Digite 'novo' ou 'reformado'","Dado incorreto",JOptionPane.PLAIN_MESSAGE);
		norestadio [i] = JOptionPane.showInputDialog("O EstÃ¡dio "+nomestadio [i]+" Ã© novo ou reformado");
		}
		break;
		
		case (5) :
			areaestadio [i] = Integer.parseInt(JOptionPane.showInputDialog("Ã�rea do EstÃ¡dio "+nomestadio [ i ]));
		break;
		
		default :
			JOptionPane.showMessageDialog(null, "Opçãoo digitada é invá¡lida.", "OpÃ§Ã£o invÃ¡lida.", JOptionPane.PLAIN_MESSAGE);
			break;
			
			}
		opcaoAlterEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Nome do EstÃ¡dio"
				+ " ["+nomestadio[i]+"]\n2 - Cidade do EstÃ¡dio ["+cidestadio[i]+"]\n3 - Capacidade do EstÃ¡dio "
						+ "["+capestadio[i]+"]\n4 - Novo ou reformado ["+norestadio[i]+"]\n5 - Ã�rea do EstÃ¡dio ["+areaestadio[i]+"]\n0 - Voltar ao menu anterior"));
	}		
	}		
	
	/**
	* 
	* Modulo que exibe menu de recuperacao dos dados dos estadios
	* 
	*/
	public static void moduloRecupEst() {
				//Recuperar
				int opcaoRecupEst;
				
				opcaoRecupEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - RelaÃ§Ã£o de EstÃ¡dios \n2 - EstÃ¡dios de maior e "
						+ "menor capacidade \n3 - EstÃ¡dios de maior e menor tamanho \n4 - Quantidade de estÃ¡dios por capacidade \n5 - RelaÃ§Ã£o "
						+ "de estÃ¡dios novos e reformados \n6 - Percentual de estÃ¡dios novos e reformados \n0 - Voltar ao menu anterior"));
				while (opcaoRecupEst!=0){
					switch (opcaoRecupEst){
					case (1) :
						recupTdosEst();
					break;
					case (2) :
						recupMaiorMenorCap ();
						break;
					case (3) :
						recupMaiorMenorArea();
						break;
					case (4) :
						recupCapacidades();
						break;
					case (5) :
						recupEstNovRef();
						break;
					case (6) :							
						recupPrcentual();
						break;
					default :
						JOptionPane.showMessageDialog(null, "OpÃ§Ã£o digitada Ã© invÃ¡lida.", "OpÃ§Ã£o invÃ¡lida", JOptionPane.PLAIN_MESSAGE);
						break;
						
					}
					opcaoRecupEst = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o: \n1 - RelaÃ§Ã£o de EstÃ¡dios \n2 - EstÃ¡dios de maior e "
							+ "menor capacidade \n3 - EstÃ¡dios de maior e menor tamanho \n4 - Quantidade de estÃ¡dios por capacidade \n5 - RelaÃ§Ã£o "
							+ "de estÃ¡dios novos e reformados \n6 - Percentual de estÃ¡dios novos e reformados \n0 - Voltar ao menu anterior"));
				}
			}
	
		/**
		* 
		* Modulo que recupera todos os nomes dos estadios
		* 
		*/
		public static void recupTdosEst () {
		String rectodestadios;	
		rectodestadios="";
			int c=0;
			for (i=0;i<constanteest;i++){
		
				if (nomestadio[i]!=null) {
				c=i+1;
			rectodestadios = rectodestadios+"\n"+c+" - EstÃ¡dio "+ nomestadio[i];
				}
			}
		JOptionPane.showMessageDialog(null, "RelÃ§Ã£o de estÃ¡dios: "+rectodestadios, "Limite de inserÃ§Ã£o."
				 , JOptionPane.PLAIN_MESSAGE);
		}
		/**
		* 
		* Modulo que recupera os estadios de maior e menor capacidade
		* 
		*/
		public static void recupMaiorMenorCap () {
		int maiorcapacidade=0,menorcapacidade=0;
		String estmaicap="",estmencap="";
		for (i=0;i<constanteest;i++) {
			if (i==0){
				maiorcapacidade=capestadio[i];
				estmaicap=nomestadio[i];
				menorcapacidade=capestadio[i];
				estmencap=nomestadio[i];
			}
			else {
				if (nomestadio[i]!=null) {
				if (capestadio[i]>maiorcapacidade) {
					maiorcapacidade=capestadio[i];
					estmaicap=nomestadio[i];
					}
					if (capestadio[i]<=menorcapacidade){
					menorcapacidade=capestadio[i];
					estmencap=nomestadio[i];										
				}
				}
			}
		}
		JOptionPane.showMessageDialog(null, "O estÃ¡dio "+estmaicap+" possui maior capacidade com "+maiorcapacidade+" lugares "
				+ "\nO estÃ¡dio "+estmencap+" possui menor capacidade com "+menorcapacidade+" lugares", "RecuperaÃ§Ã£o", JOptionPane.PLAIN_MESSAGE);
		}
		/**
		* 
		* Modulo que recupera os estadios de maior e menor Ã¡rea
		* 
		*/
		public static void recupMaiorMenorArea () {
		String estmaitam="",estmentam="";
		int maiorarea=0,menorarea=0;
		for (i=0;i<constanteest;i++) {
			if (i==0){
				maiorarea=areaestadio[i];
				estmaitam=nomestadio[i];
				menorarea=areaestadio[i];
				estmentam=nomestadio[i];
			}
			else {
				if (nomestadio[i]!=null) {
				if (areaestadio[i]>maiorarea) {
					maiorarea=areaestadio[i];
					estmaitam=nomestadio[i];
					}
					if (areaestadio[i]<=menorarea){
					menorarea=areaestadio[i];
					estmentam=nomestadio[i];										
				}
				}
			}
		}
		JOptionPane.showMessageDialog(null, "O estÃ¡dio "+estmaitam+" possui maior tamanho com "+maiorarea+" m2 "
				+ "\nO estÃ¡dio "+estmentam+" possui menor tamanho com "+menorarea+" m2", "RecuperaÃ§Ã£o", JOptionPane.PLAIN_MESSAGE);
		}
		/**
		* 
		* Modulo que recupera a quantidade de estadios de capacidade inferior a 50.000 lugares, entre 50.000 e 60.000 lugares e superior a 60.000 lugares
		* 
		*/
		public static void recupCapacidades () {
		int menor50=0,entre50e60=0,maior60=0;
		for (i=0;i<constanteest;i++) {
			if (nomestadio[i]!=null) {
			if (capestadio[i]<50000 && capestadio[i]>0){
				menor50=menor50+1;
			}
			else if ((capestadio[i]>=50000) && (capestadio[i]<=60000)) {
					entre50e60=entre50e60+1;
					}
			else if (capestadio[i]>60000) {
				maior60=maior60+1;
			}
		}
		}
		JOptionPane.showMessageDialog(null, menor50+" estÃ¡dio(s) possui(em) caacidade inferior a 50.000 lugares\n"
			+ entre50e60+" estÃ¡dio(s) possui(em) capacidade entre 50.000 e 60.000 lugares \n"+maior60+" estÃ¡dio(s) possui(em)"
			+ "capacidade superior a 60.000 lugares", "RecuperaÃ§Ã£o", JOptionPane.PLAIN_MESSAGE);
		}
		/**
		* Modulo que recupera e separa os estadios em novos e reformados
		*/
		public static void recupEstNovRef () {
		String relacestnov="",relacestref="";	
		for (i=0;i<constanteest;i++) {
			if (nomestadio[i]!=null) {
			if (norestadio[i].equalsIgnoreCase("Novo")) {
				relacestnov=relacestnov+nomestadio[i]+"\n";
			}
			else {
				relacestref=relacestref+nomestadio[i]+"\n";
			}
		}
		}
		JOptionPane.showMessageDialog(null, "EstÃ¡dios novos:\n"+relacestnov+"\nEstÃ¡dios reformados:\n"+relacestref, "RecuperaÃ§Ã£o", JOptionPane.PLAIN_MESSAGE);
		}
		/**
		* 
		* Modulo que recupera o percentual de estadios novos e reformados
		* 
		*/
		public static void recupPrcentual () {
		float percestnov,percestref;
		int contperestnov=0,contperestref=0,div=0;
		percestnov=0;percestref=0;
		for (i=0;i<constanteest;i++) {
			if (nomestadio[i]!=null) {
			if (norestadio[i].equalsIgnoreCase("Novo")) {
				contperestnov=contperestnov+1;
			}
			else {
				contperestref=contperestref+1;
			}
			div=div+1;
		}
		}
		percestnov=((float)contperestnov/div)*100;
		percestref=((float)contperestref/div)*100;
		JOptionPane.showMessageDialog(null, "\nPercentual de estÃ¡dios novos:\n"+percestnov+"% \nPercentual de estÃ¡dios reformados:\n"+percestref+"%", "RecuperaÃ§Ã£o", JOptionPane.PLAIN_MESSAGE);
		}
		public static void preCadastroEstadio () {
		nomestadio[0]="Maracana";nomestadio[1]="Beira-Rio";nomestadio[2]="Arena Pantanal";
		cidestadio[0]="Belo Horizonte";cidestadio[1]="Porto Alegre";cidestadio[2]="Cuiaba";
		norestadio[0]="Reformado";norestadio[1]="Reformado";norestadio[2]="Novo";
		capestadio[0]=74738;capestadio[1]=43394;capestadio[2]=41112;
		areaestadio[0]=6500;areaestadio[1]=5500;areaestadio[2]=4500;
		}
		
	//Jogos
	public static void menuJogo() {
		int op1;
		op1 = Integer.parseInt(JOptionPane.showInputDialog("Selecione OpÃ§Ã£o  \n1- Incluir\n2 - Alterar\n3 - Recuperar\n0 - Voltar ao menu principal"));
	        while (op1!=0){
	        	
	        switch (op1) {
	        case 1:
	        	moduloInclusaoJogos();
	        	break;
	        	           	                          	
	        case 3:
	        	moduloAlteracaoJogos();
	        	break;
	        	
	        case 2:
	        	//recuperarJogo();
	        	break;
	        	
	        default:
	        	JOptionPane.showMessageDialog (null, "OpÃ§Ã£o InvÃ¡lida");
	  
	        }
	    	op1 = Integer.parseInt(JOptionPane.showInputDialog("Selecione OpÃ§Ã£o  \n1- Incluir\n2 - Alterar\n3 - Recuperar\n0 - Voltar ao menu principal"));            
	        }
	        
	  }
						
	/**
	 * 
	 * Modulo que valida o estadio incluido
	 * 
	 */
	public static boolean validaEstadio(String nomedoEstadio){
		  for(int i=0; i<constanteest; i++){
			  if(nomedoEstadio.equalsIgnoreCase (nomestadio[i])){
			  return true;
		  }
	  }
		  
		  return false;
	  }
	 /**
	 * Metodo para adicionar um novo jogo no vetor
	 */
	public static  void moduloInclusaoJogos() {
		 String aux;
		  if (nJogo<constJogo){
		  data [nJogo] = Integer.parseInt(JOptionPane.showInputDialog ("Digite o dia do Jogo"));
	
		  do{
			  aux = JOptionPane.showInputDialog("Digite nome do EstÃ¡dio");
			  if(validaEstadio(aux)){
				  estadio [nJogo] = aux;
			  }else{
				  JOptionPane.showMessageDialog (null, "Estadio nÃ£o Cadastrado");
			  }
		  }while(!validaEstadio(aux));
		  selecao1 [nJogo] = JOptionPane.showInputDialog("Digite SeleÃ§Ã£o 1");
		  selecao2 [nJogo] = JOptionPane.showInputDialog("Digite SeleÃ§Ã£o 2");
		  golselecao1 [nJogo] = Integer.parseInt(JOptionPane.showInputDialog("Digite gols SeleÃ§Ã£o 1"));
		  golselecao2 [nJogo] = Integer.parseInt(JOptionPane.showInputDialog("Digite gols SeleÃ§Ã£o 2"));
	    		 
		  nJogo++;
	    }
		  else{
			
				msgLimiteExcedido();
		  }
	  }

public static void moduloAlteracaoJogos(){
	i=0;
	int alterajogo = Integer.parseInt(JOptionPane.showInputDialog("Digite data do jogo: "));

	while (alterajogo!=data [i]){
	i=i+1;
	}

int menuAltJogo = Integer.parseInt(JOptionPane.showInputDialog("Escolha uma opÃ§Ã£o para alteraÃ§Ã£o: \n1 - Data do Jogo"
		+ " ["+data+"]\n2 - EstÃ¡dio do Jogo ["+estadio+"]\n3 - SeleÃ§Ã£o 1 "+ "["+selecao1+"]\n4 - SeleÃ§Ã£o 2" 
		 + "["+selecao2+"\n5 - Gols SeleÃ§Ã£o 1" + " ["+golselecao1+"]\n6 - Gols SeleÃ§Ã£o 2" + "["+golselecao2+"]"));
while (menuAltJogo!=0) {
	
	//OpÃ§Ãµes de alteraÃ§Ã£o
	switch (menuAltJogo) {
	
	case (1) :
	data [i] = Integer.parseInt(JOptionPane.showInputDialog("Dia do Jogo"));
	break;
	
	case (2) :
	estadio [ i ] = JOptionPane.showInputDialog("EstÃ¡dio do Jogo");
	break;
	
	case (3) :
		selecao1 [ i ] = JOptionPane.showInputDialog("SeleÃ§Ã£o 1");
	break;
	
	case (4) :
		selecao2 [ i ] = JOptionPane.showInputDialog("SeleÃ§Ã£o 2");
	break;
	
	case (5) :
		golselecao1 [ i ] = Integer.parseInt(JOptionPane.showInputDialog("Gols SeleÃ§Ã£o 1"));
	break;
	
	case (6) :
		golselecao2 [ i ] = Integer.parseInt(JOptionPane.showInputDialog("Gols SeleÃ§Ã£o 2"));
	break;
	
	
	default :
		JOptionPane.showMessageDialog(null, "OpÃ§Ã£o digitada Ã© invÃ¡lida.", "OpÃ§Ã£o invÃ¡lida.", JOptionPane.PLAIN_MESSAGE);
		break;
		
		}
	}
}
public static void menurecuperacaoJogo () {
	int opcaorecup=0;
	opcaorecup = Integer.parseInt(JOptionPane.showInputDialog("1 - \n2 - \n3 - \n0 - Sair"));
	while (opcaorecup!=0) {
		switch (opcaorecup) {
		case 1 :
			recupSaldoGolsSelecao();
			break;
		case 2 :
			
			break;
			default : 
				break;
		}
		 
	}
}

public static void recupSaldoGolsSelecao () {
	String recupselecao="";
	recupselecao = JOptionPane.showInputDialog("Digite uma seleÃ§Ã£o para ver seus jogos");
	while(!recupselecao.equalsIgnoreCase(nomeSelecao[i])) {
		i=i+1;
		}
	
}

public static int getNroVitorias(String selecao){
	int v=0;
	for(int i=0; i<nJogo; i++){
		if(selecao1[i].equalsIgnoreCase(selecao)){
				if(golselecao1[i]>golselecao2[i]){
					v++;
				}
		}
		else if(selecao2[i].equalsIgnoreCase(selecao)){
			if(golselecao2[i]>golselecao1[i]){
				v++;
			}
		}
	}
	return v;
}
public static void preencheVitorias(){
	for(int i=0; i<32; i++){
		tabela[i][0] = getNroVitorias(nomeSelecao[i]);
		if(nomeSelecao[i]!=null){
		JOptionPane.showMessageDialog(null, "Selecao "+nomeSelecao[i]+" vitorias = "+tabela[i][0]);
		}
		}		
}

public static int getNroEmpates(String selecao){
	int e=0;
	for(int i=0; i<nJogo; i++){
		if(selecao1[i].equalsIgnoreCase(selecao)){
				if(golselecao1[i]==golselecao2[i]){
					e++;
				}
		}
		
	}
	return e;
}
public static int getNroGolsPro(String selecao){
	int gp=0;
	for(int i=0; i<nJogo; i++){
		if(selecao1[i].equalsIgnoreCase(selecao)){
				if(golselecao1[i]!=0){
					gp=gp+golselecao1[i];
				}
		}
		else if (selecao2[i].equalsIgnoreCase(selecao)){
			if(golselecao2[i]!=0){
				gp=gp+golselecao2[i];
			}
		}
		
	}
	return gp;
}
public static void preencheGolsPro(){
	for (int i=0; i<32; i++){
		tabela[i][3] = getNroGolsPro(nomeSelecao[i]);
		if(nomeSelecao[i]!=null){
		JOptionPane.showMessageDialog(null, "Selecao "+nomeSelecao[i]+" gols pro = "+tabela[i][3]);
		}
		}
	}
public static int getNroGolsContra(String selecao){
	int gc=0;
	for(int i=0; i<nJogo; i++){
		if(selecao1[i].equalsIgnoreCase(selecao)){
				if(golselecao2[i]!=0){
					gc=gc+golselecao2[i];
				}
		}
		else if (selecao2[i].equalsIgnoreCase(selecao)){
			if(golselecao1[i]!=0){
				gc=gc+golselecao1[i];
			}
		}
		
	}
	return gc;
}
public static void preencheGolsContra(){
	for (int i=0; i<32; i++){
		tabela[i][4] = getNroGolsContra(nomeSelecao[i]);
		if(nomeSelecao[i]!=null){
		JOptionPane.showMessageDialog(null, "Selecao "+nomeSelecao[i]+" gols contra = "+tabela[i][4]);
		}
		}
	}

public static int getNroDerrotas(String selecao){
	int d=0;
	for(int i=0; i<nJogo; i++){
		if(selecao1[i].equalsIgnoreCase(selecao)){
				if(golselecao1[i] < golselecao2[i]){
					d++;
				}
		}
		
	}
	return d;
}
public static void preencheDerrotas(){
	for (int i=0; i<32; i++){
		tabela[i][1] = getNroDerrotas(nomeSelecao[i]);
		if(nomeSelecao[i]!=null){
		JOptionPane.showMessageDialog(null, "Selecao "+nomeSelecao[i]+" derrotas = "+tabela[i][2]);
		}
		}
	}
public static void preencheEmpates(){
	for (int i=0; i<32; i++){
		tabela[i][1] = getNroEmpates(nomeSelecao[i]);
		if(nomeSelecao[i]!=null){
		JOptionPane.showMessageDialog(null, "Selecao "+nomeSelecao[i]+" empates = "+tabela[i][1]);
		}
		}
	}


public static void preCadastroJogos() {
	data[0] = 12/06/14;
	data[1] = 12/06/14;
	data[2] = 12/06/14;
	data[3] = 12/06/14;
	data[4] = 12/06/14;
	data[5] = 18/06/14;
	data[6] = 18/06/14;
	data[7] = 18/06/14;
	data[8] = 18/06/14;
	data[9] = 18/06/14;
	data[10] = 25/06/14;
	data[11] = 25/06/14;
	data[12] = 25/06/14;
	data[13] = 25/06/14;
	data[14] = 25/06/14;
	data[15] = 04/07/14;
	data[16] = 04/07/14;
	data[17] = 04/07/14;
	data[18] = 04/07/14;
	data[19] = 04/07/14;

	estadio[0] = "Maracanã";
	estadio[1] = "Arena das Dunas";
	estadio[2] = "Itaquerão";
	estadio[3] = "Arena Pantanal";
	estadio[4] = "Mineirão";
	estadio[5] = "Arena da Baixada";
	estadio[6] = "Beira Rio";
	estadio[7] = "Nacional";
	estadio[8] = "Itaquerão";
	estadio[9] = "Maracanã";
	estadio[10] = "Arena da Baixada";
	estadio[11] = "Mineirão";
	estadio[12] = "Castelão";
	estadio[13] = "Arena das Dunas";
	estadio[14] = "Beira Rio";
	estadio[15] = "Castelão";
	estadio[16] = "Maracanã";
	estadio[17] = "Mineirão";
	estadio[18] = "Arena Pantanal";
	estadio[19] = "Nacional";

	selecao1[0] = "Brasil";
	selecao1[1] = "Chile";
	selecao1[2] = "Alemanha";
	selecao1[3] = "Espanha";
	selecao1[4] = "Portugal";
	selecao1[5] = "Colômbia";
	selecao1[6] = "Inglaterra";
	selecao1[7] = "Argentina";
	selecao1[8] = "Uruguai";
	selecao1[9] = "Mexico";
	selecao1[10] = "Brasil";
	selecao1[11] = "Espanha";
	selecao1[12] = "Colômbia";
	selecao1[13] = "Alemanha";
	selecao1[14] = "Chile";
	selecao1[15] = "Brasil";
	selecao1[16] = "Uruguai";
	selecao1[17] = "Argentina";
	selecao1[18] = "Inglaterra";
	selecao1[19] = "Mexico";

	selecao2[0] = "Argentina";
	selecao2[1] = "Colômbia";
	selecao2[2] = "Mexico";
	selecao2[3] = "Inglaterra";
	selecao2[4] = "Uruguai";
	selecao2[5] = "Portugal";
	selecao2[6] = "Alemanha";
	selecao2[7] = "Chile";
	selecao2[8] = "Espanha";
	selecao2[9] = "Brasil";
	selecao2[10] = "Uruguai";
	selecao2[11] = "Portugal";
	selecao2[12] = "Mexico";
	selecao2[13] = "Argentina";
	selecao2[14] = "inglaterra";
	selecao2[15] = "Alemanha";
	selecao2[16] = "Colômbia";
	selecao2[17] = "Chile";
	selecao2[18] = "Portugal";
	selecao2[19] = "Espanha";

	golselecao1[0] = 1;
	golselecao1[1] = 2;
	golselecao1[2] = 4;
	golselecao1[3] = 0;
	golselecao1[4] = 1;
	golselecao1[5] = 1;
	golselecao1[6] = 2;
	golselecao1[7] = 3;
	golselecao1[8] = 2;
	golselecao1[9] = 1;
	golselecao1[10] = 2;
	golselecao1[11] = 3;
	golselecao1[12] = 0;
	golselecao1[13] = 1;
	golselecao1[14] = 1;
	golselecao1[15] = 1;
	golselecao1[16] = 0;
	golselecao1[17] = 1;
	golselecao1[18] = 3;
	golselecao1[19] = 2;

	golselecao2[0] = 1;
	golselecao2[1] = 1;
	golselecao2[2] = 1;
	golselecao2[3] = 0;
	golselecao2[4] = 2;
	golselecao2[5] = 3;
	golselecao2[6] = 0;
	golselecao2[7] = 1;
	golselecao2[8] = 2;
	golselecao2[9] = 2;
	golselecao2[10] = 1;
	golselecao2[11] = 2;
	golselecao2[12] = 0;
	golselecao2[13] = 1;
	golselecao2[14] = 2;
	golselecao2[15] = 7;
	golselecao2[16] = 1;
	golselecao2[17] = 1;
	golselecao2[18] = 2;
	golselecao2[19] = 2;
}

}